﻿// A Knight's Journey POJ - 2488.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>


/*
https://vjudge.net/problem/POJ-2488
背景
骑士厌倦了重复看同样的黑白方格，决定环游世界。
环游世界。每当骑士移动时，他都会朝一个方向移动两格，再垂直移动一格。马的世界就是他生活的棋盘。
我们的马生活在一个棋盘上，这个棋盘的面积比普通的 8*8 棋盘小，但仍然是长方形的。你能帮助这个喜欢冒险的骑士制定旅行计划吗？




问题
找出一条路径，让骑士每个方格都走一遍。骑士可以在棋盘的任意位置开始和结束。
输入
输入的第一行以正整数 n 开始。接下来的行包含 n 个测试用例。每个测试用例由一行组成，
每行包含两个正整数 p 和 q，即 1 <= p * q <= 26。这表示一个 p * q 的棋盘，
其中 p 表示有多少个不同的正方形数字 1, . p 表示有多少个不同的正方形数字 1、......、p，q 表示有多少个不同的正方形字母。
这些是拉丁字母的前 q 个字母： A, . . .
输出
每个场景的输出都以一行 "场景 #i: "开始，其中 i 是场景的编号，从 1 开始。 然后打印一行，其中包含用马步访问棋盘所有方格的词典上第一条路径，接着是一行空行。路径应在一行中给出，将访问过的方格名称连接起来。每个位置的名称由一个大写字母和一个数字组成。
如果不存在这样的路径，则应在一行中输出不可能的结果。

3
1 1
2 3
4 3

Scenario #1:
A1

Scenario #2:
impossible

Scenario #3:
A1B3C1A2B4C2A3B1C3A4B2C4

*/
int main()
{
    std::cout << "Hello World!\n";
}
 